home *** CD-ROM | disk | FTP | other *** search
- #ifndef _SCREEN_H
- #define _SCREEN_H
-
- #ifdef __cplusplus
- extern "C" {
- #endif
-
- /* Data structures for IOCTL on /dev/screen */
-
- #define SCR_NUM_COLORS 256 /* max possible num. of colors (even more on Falcon) */
-
- /* SCR_ALIGN gives a mask telling how the physical screen must be
- aligned (for the SCRSETP ioctl call. A typical use might be
- newscrn = malloc(size + SCR_ALIGN) & (~SCR_ALIGN)
- If SCR_ALIGN is -1, then the physical screen may not be remapped
- */
- #define SCR_ALIGN 0x0ffL
-
- /* define the following only if the physical memory occupied by the
- screen is not accessible to user programs without an operating
- system request to re-map or shar memory (i.e. don't define this
- unless you have a version of Minix with a hardware memory
- manager
- */
- /* #define SCR_VIRT_MEM */ /* screen lives in virtual memory */
-
-
- /* physical screen attributes; information returned by the
- SCRGETPARAM ioctl call */
-
- struct scr_param {
- long scr_base; /* physical address of screen */
- short scr_width; /* width of screen (pixels) */
- short scr_height; /* height of screen (pixels) */
- short scr_depth; /* no. of bitplanes on screen */
- short scr_mode; /* special mode info about screen */
- };
-
- /* Each palette entry for the screen colors holds three entries;
- the red, green, and blue values for this color, from 0 (no color)
- to 255 (max. color).
- The actual number of different values recognized by the hardware
- is given by SCR_RGB_VALUES; for example, the atari ST recognizes
- only 8 possible values for each of red, green, and blue, for
- a total of 512 colors; for it, SCR_RGB_VALUES == 8.
- */
-
- #define SCR_RGB_VALUES 16
-
- /* constants for accessing the scr_rgb array */
- #define RED 0
- #define BLUE 1
- #define GREEN 2
-
- /* data structure returned by SCRGETCOLOR ioctl call */
- struct scr_palette {
- unsigned char scr_rgb[SCR_NUM_COLORS][3];
- };
-
-
- #define SCRGETPARAM (('S'<<8) | 1)
- #define SCRSETPARAM (('S'<<8) | 2)
- #define SCRGETCOLOR (('S'<<8) | 3)
- #define SCRSETCOLOR (('S'<<8) | 4)
-
- #ifdef __cplusplus
- }
- #endif
-
- #endif /* _SCREEN_H */
-